-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
프로파일 분리 완료 #63
프로파일 분리 완료 #63
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
해당 파일은 테스트용 redis의 환경변수 값을 주입하기 위한 클래스인가요?
만약 그렇다면 아래쪽의 RedisConfig와 차이점이 무엇인가요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
해당 파일은 말씀해주신 테스트용 redis의 환경변수 값을 주입하기 위한 목적도 가지고 있지만, 실제 레디스 서버 대신 EmbeddedRedis를 사용하기 위함이기도 합니다.
두 Config는 어느 환경에 위치한 레디스를 사용해야하는가에 따라 나누었는데요, 아시다시피 개발 환경과 배포 환경에서는 각각 로컬 또는 EC2 컨테이너로 존재하는 실제 Redis 서버를 사용하고 있어요.
따라서 RedisConfig는 외부 Redis 서버를 사용하기 위한 설정을 수행하고 있습니다.
반면 테스트 환경에서는 실제 Redis 서버 대신 내장된 레디스 서버(EmbeddedRedis)를 사용하려고 합니다.
그러므로 EmbeddedRedis를 사용하기 위한 설정을 따로 분리하였습니다.
- 이해를 돕기 위한 추가 설명
RedisServer를 사용하기 위해 redis.embedded.RedisServer를 임포트하고 있는 것을 확인하실 수 있어요!
@PostConstruct public void startEmbeddedRedis() { redisServer = new RedisServer(port); redisServer.start(); }
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이해했습니다! 답변 감사합니다
📄 PR 요약
dev
,test
,prod
프로파일별로 환경 설정을 분리하였습니다.📋 관련 이슈
🛠️ 변경 사항 설명
dev
프로파일로 실행되도록 설정하였습니다.prod
프로파일이 사용되도록 배포 스크립트를 수정하였습니다.dev
: 로컬 Redis 사용prod
: AWS에서 Redis 컨테이너 사용test
: Embedded Redis 사용